package com.itheima.leetcode.od.b.string;

/**
 * <h3>正整数到Excel编号之间的转换</h3>
 * 用过excel的都知道excel的列编号是这样的：
 * <p>
 * a b c .... z aa ab ac .... az ba bb bc .... yz za zb zc .... zz aaa aab aac ....
 * <p>
 * 分别代表以下编号：
 * <p>
 * 1 2 3 .... 26 27 28 29 .... 52 53 54 55 .... 676 677 678 679 .... 702 703 704 705 .... 请写个函数，完成从一个正整数到这种字符串之间的转换。
 * <p>
 * 输入描述：
 * <p>
 * 一行，一个数字
 * <p>
 * 输出描述：
 * <p>
 * excel样式的字符串
 * <p>
 * <p>
 * 示例1：
 * <p>
 * 输入：
 * <p>
 * 1
 * <p>
 * 输出：
 * <p>
 * a
 * <p>
 * 示例2：
 * <p>
 * 输入：
 * <p>
 * 26
 * <p>
 * 输出：
 * <p>
 * z
 * <p>
 * 示例3：
 * <p>
 * 输入：
 * <p>
 * 27
 * <p>
 * 输出：
 * <p>
 * aa
 */
public class ConversionPositiveIntegersAndExcel {
    public static void main(String[] args) {
        /*//处理输入
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();*/

        int n = 27;
        System.out.println(getResult(n));
    }

    private static String getResult(int n) {
        String result = "";
        if (n > 0) {
            while (n > 0) {
                n -= 1;
                result += (char) ((n % 26) + 'a');
                n /= 26;
            }
        }
        return new StringBuilder(result).reverse().toString();
    }
}